#ifndef N2WINDOW_H_2006_11_22
#define N2WINDOW_H_2006_11_22

#include "N2Lib.h"
#include "N2View.h"
#include "N2Drawer.h"

class N2Window : public N1Object {
protected:
#ifdef WINDOWS
    HWND    m_hWnd;
#endif
    uint32  m_borderSize;
    uint32  m_captionSize;

    N2View *m_contentView;

public:
    N2Window(uint32 width, uint32 height);
    virtual ~N2Window();

    N1NAME_DECL

    N2Size  getSize() const ;
    N2Size  getClientSize() const ;

    uint32  getBorderSize() const ;
    uint32  getCaptionSize() const ;

    void    setContentView(N2View* view);
    N2View* getContentView();

    static void runLoop();
    static void runLoop(double seconds);

    virtual void draw(N2Drawer *drawer);
};

#endif //N2WINDOW_H_2006_11_22
